// class-transformer 用于一个在类和普通对象之间进行转换的库，一般和class-validator一起使用
import {plainToInstance, instanceToPlain} from 'class-transformer'
// plainToInstance 普通对象转为类实例对象
// instanceToPlain 类转为普通对象

class User{
    name:string
    age:number
}
const plainUser = {name:'nick',age:18};
// 将plainUser普通对象转为类实例的对象
const user = plainToInstance(User,plainUser);
console.log(user instanceof User);

// 将实例对象转为普通对象
const plainObject = instanceToPlain(user);
console.log(plainObject instanceof User);



// 简单原理
// function mplainToInstance(clazz,plainObject:any){
//     let instance = new Clazz();
//     for(let k in obj){
//         instance[k] = obj[k]
//     }
//     return instance;
// }
//
// function minstanceToPlain(instance){
//     return JSON.parse(JSON.stringify(instance))
// }
